-
Notifications
You must be signed in to change notification settings - Fork 295
Use self.start_dir
in LLVM easyblock
#3770
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Umh if
All the sources are of the type
We could add a check to be more transparent about this behavior and not do the join in case of an abspath. |
It is and even checked for existence: https://github.com/easybuilders/easybuild-framework/blob/87b3d9d959b5f3ec739f3db4a350982b531c58fb/easybuild/framework/easyblock.py#L2299-L2338
Ah, the release sources yes. I was using a specific commit (required for Triton) where that extension is missing.
I'm fixing that in #3769 |
After some more work on the Bundle easyblock I don't see a way to fix it without breaking existing easyconfigs/easyblocks. But it still stands: BTW: I haven't found any easyconfigs using LLVM in components. Do you know any? |
Test report by @Flamefire |
ROCm-LLVM will, see: This order is required, due to the weird handling of dependencies by AMD. CC @bedroge |
I'm convinced that would still work: You use the (usual) workaround of manually setting So it will be set by the point it gets to the |
Test report by @Flamefire Overview of tested easyconfigs (in order)
Build succeeded for 3 out of 5 (5 easyconfigs in total) Failure in LLVM 20 caused by #3758 fixed in #3755 Failure in 18.1 is present before: #3741 (comment) |
Test report by @Flamefire Overview of tested easyconfigs (in order)
Build succeeded for 4 out of 5 (5 easyconfigs in total) |
Test report by @Flamefire Overview of tested easyconfigs (in order)
Build succeeded for 1 out of 1 (1 easyconfigs in total) |
Test report by @Flamefire Overview of tested easyconfigs (in order)
Build succeeded for 1 out of 1 (1 easyconfigs in total) |
For me I am fine with the |
That can be removed, at some point i also added it to being called inside easybuild-easyblocks/easybuild/easyblocks/l/llvm.py Lines 838 to 840 in f710d05
|
Fully agreed on the first point to not break anyone.
That wouldn't affect start_dir unless we put them before the the source of the llvm-project for which I can't see any reason. I added a property (which is read-only by default) for existing, derived easyblocks. Does that work for you?
That was what I thought. I'd even go further and use a property which initializes itself on access so we never end up reading |
I think that would be a good idea, but i would leave that for a separate PR The second part is in case we download extra packages outside of the llvm project, but I agree it is fine like this and in case we fixit in the future. Gonna do one final bot run and than merge this |
@boegelbot please test @ jsc-zen3 |
@Crivella: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de PR test command '
Test results coming soon (I hope)... - notification for comment with ID 2996140671 processed Message to humans: this is just bookkeeping information for me, |
@boegelbot please test @ jsc-zen3 |
I opened a PR for that: #3793 |
@Crivella: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de PR test command '
Test results coming soon (I hope)... - notification for comment with ID 2996187054 processed Message to humans: this is just bookkeeping information for me, |
Test report by @boegelbot Overview of tested easyconfigs (in order)
Build succeeded for 1 out of 1 (1 easyconfigs in total) |
@boegelbot please test @ jsc-zen3 |
@Crivella: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de PR test command '
Test results coming soon (I hope)... - notification for comment with ID 2998368657 processed Message to humans: this is just bookkeeping information for me, |
You have a missing |
@Flamefire: I noticed your comment, but I only dance when @akesandgren or @bartoldeman or @bedroge or @boegel or @branfosj or @casparvl or @Crivella or @jfgrimm or @lexming or @Micket or @migueldiascosta or @ocaisa or @SebastianAchilles or @smoors or @verdurin or @WilleBell or @robert-mijakovic or @deniskristak or @ItIsI-Orient or @PetrKralCZ or @sassy-crick or @laraPPr or @pavelToman or @Louwrensth or @Thyre tells me (for now), I'm sorry... - notification for comment with ID 2999090403 processed Message to humans: this is just bookkeeping information for me, |
@boegelbot please test @ jsc-zen3 |
@Thyre: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de PR test command '
Test results coming soon (I hope)... - notification for comment with ID 2999133091 processed Message to humans: this is just bookkeeping information for me, |
Test report by @boegelbot Overview of tested easyconfigs (in order)
Build succeeded for 1 out of 1 (1 easyconfigs in total) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Going in, thanks @Flamefire! |
Thanks! #3793 updated after merge |
Test report by @Flamefire Overview of tested easyconfigs (in order)
Build succeeded for 2 out of 2 (2 easyconfigs in total) |
self.cfg['start_dir']
gets initialized inguess_start_dir
and hence is always set to an absolute path, so non-empty.Note that
path.join(anything, abs-path) == abs-path
So
llvm_src_dir
is always equal toself.start_dir
and we can remove this property.@Crivella am I missing anything?
I'm also wondering about the src extension in
llvm-project-%s.src
. Haven't seen that in my tests anywhere and it likely didn't cause issues due to the above which means that code path wasn't used.